/**
 * 管理员服务类
 */
public class AdminService extends ManagerService {

    public AdminService(CinemaSystem system) {
        super(system);
    }

    // 用户管理功能（添加/查看用户）
    @Override
    public void showMenu() {
        System.out.println("\n===== 用户管理 =====");
        System.out.println("1.添加用户  2.查看用户  3.返回上一级");
        System.out.print("请选择功能：");
    }

    @Override
    public void manage() {
        super.manage();
    }

    // 添加用户
    @Override
    public void add() {
        // 添加用户（无注册时间）
        System.out.print("请输入用户ID：");
        String userId = Main.sc.nextLine();
        System.out.print("请输入用户名：");
        String username = Main.sc.nextLine();
        // 唯一性校验（简化版）
        boolean exists = false;
        for (User u : system.getUsers()) {
            if (u.getUserId().equals(userId) || u.getUsername().equals(username)) {
                exists = true;
                break;
            }
        }
        if (exists) {
            System.out.println("用户ID或用户名已存在！");
            return;
        }

        System.out.print("请输入角色（经理/前台）：");
        String role = Main.sc.nextLine();
        System.out.print("请输入手机号：");
        String phone = Main.sc.nextLine();

        // 创建用户（初始密码123456）
        User newUser = new User(userId, username, "123456", role, phone);
        system.getUsers().add(newUser);
        System.out.println("用户添加成功，初始密码：123456");
    }

    // 查看用户列表
    @Override
    public void showList() {
        System.out.println("\n===== 所有用户 =====");
        for (User user : this.system.getUsers()) {
            System.out.println("ID：" + user.getUserId()
                    + " | 用户名：" + user.getUsername()
                    + " | 角色：" + user.getRole()
                    + " | 手机号：" + user.getPhone());
        }
    }
}
